package com.ia.aistream.model.operating.entity;

import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ia.aistream.common.type.JSONObjectTypeHandler;
import lombok.Getter;
import lombok.Setter;
import com.ia.aistream.common.annotation.Excel;
import com.ia.aistream.common.core.domain.AIBaseEntity;

import java.util.List;

/**
 * 附录信息表对象 doc_appendix
 * 
 * @author aistream
 * @date 2021-01-25
 */
@Setter
@Getter
@TableName("doc_appendix")
public class DocAppendix extends AIBaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private String id;

    /** 行的类型0：内容、1：标题、2：空行 */
    @Excel(name = "行的类型0：内容、1：标题、2：空行")
    private Long rowType;

    /** 附录序号 */
    @Excel(name = "附录序号")
    private Integer stepNum;

    /** 第一列内容 */
    @Excel(name = "第一列内容")
    private String c1O;

    /** 第一列样式 */
    @Excel(name = "第一列样式")
    @TableField(typeHandler = JSONObjectTypeHandler.class)
    private JSONObject c1Style;

    /** 第一列转义的数据 */
    @Excel(name = "第一列转义的数据")
    private String c1C;

    /** 第二列内容 */
    @Excel(name = "第二列内容")
    private String c2O;

    /** 第二列样式 */
    @Excel(name = "第二列样式")
    @TableField(typeHandler = JSONObjectTypeHandler.class)
    private JSONObject c2Style;

    /** 第二列转义的内容 */
    @Excel(name = "第二列转义的内容")
    private String c2C;

    /** 第三列内容 */
    @Excel(name = "第三列内容")
    private String c3O;

    /** 第三列样式 */
    @Excel(name = "第三列样式")
    @TableField(typeHandler = JSONObjectTypeHandler.class)
    private JSONObject c3Style;

    /** 第三列转义内容 */
    @Excel(name = "第三列转义内容")
    private String c3C;

    /** 第四列内容 */
    @Excel(name = "第四列内容")
    private String c4O;

    /** 第四列样式 */
    @Excel(name = "第四列样式")
    @TableField(typeHandler = JSONObjectTypeHandler.class)
    private JSONObject c4Style;

    /** 第四列转义 */
    @Excel(name = "第四列转义")
    private String c4C;

    /** 第五列内容 */
    @Excel(name = "第五列内容")
    private String c5O;

    /** 第五列样式 */
    @Excel(name = "第五列样式")
    @TableField(typeHandler = JSONObjectTypeHandler.class)
    private JSONObject c5Style;

    /** 第五列转义 */
    @Excel(name = "第五列转义")
    private String c5C;

    /** 第六列内容 */
    @Excel(name = "第六列内容")
    private String c6O;

    /** 第六列样式 */
    @Excel(name = "第六列样式")
    @TableField(typeHandler = JSONObjectTypeHandler.class)
    private JSONObject c6Style;

    /** 第六列转义 */
    @Excel(name = "第六列转义")
    private String c6C;

    /** 第七列内容 */
    @Excel(name = "第七列内容")
    private String c7O;

    /** 第七列样式 */
    @Excel(name = "第七列样式")
    @TableField(typeHandler = JSONObjectTypeHandler.class)
    private JSONObject c7Style;

    /** 第七列转义 */
    @Excel(name = "第七列转义")
    private String c7C;

    /** 第八列内容 */
    @Excel(name = "第八列内容")
    private String c8O;

    /** 第八列样式 */
    @Excel(name = "第八列样式")
    @TableField(typeHandler = JSONObjectTypeHandler.class)
    private JSONObject c8Style;

    /** 第八列转义 */
    @Excel(name = "第八列转义")
    private String c8C;

    /** 第九列内容 */
    @Excel(name = "第九列内容")
    private String c9O;

    /** 第九列样式 */
    @Excel(name = "第九列样式")
    @TableField(typeHandler = JSONObjectTypeHandler.class)
    private JSONObject c9Style;

    /** 第九列转义 */
    @Excel(name = "第九列转义")
    private String c9C;

    /** 第十列内容 */
    @Excel(name = "第十列内容")
    private String c10O;

    /** 第十列样式 */
    @Excel(name = "第十列样式")
    @TableField(typeHandler = JSONObjectTypeHandler.class)
    private JSONObject c10Style;

    /** 第十列转义 */
    @Excel(name = "第十列转义")
    private String c10C;

    /** 第11列内容 */
    @Excel(name = "第11列内容")
    private String c11O;

    /** 第11列样式 */
    @Excel(name = "第11列样式")
    @TableField(typeHandler = JSONObjectTypeHandler.class)
    private JSONObject c11Style;

    /** 第11列转义 */
    @Excel(name = "第11列转义")
    private String c11C;

    /** 第12列内容 */
    @Excel(name = "第12列内容")
    private String c12O;

    /** 第12列样式 */
    @Excel(name = "第12列样式")
    @TableField(typeHandler = JSONObjectTypeHandler.class)
    private JSONObject c12Style;

    /** 第12列转义 */
    @Excel(name = "第12列转义")
    private String c12C;

    /** 第13列内容 */
    @Excel(name = "第13列内容")
    private String c13O;

    /** 第13列样式 */
    @Excel(name = "第13列样式")
    @TableField(typeHandler = JSONObjectTypeHandler.class)
    private JSONObject c13Style;

    /** 第13列转义 */
    @Excel(name = "第13列转义")
    private String c13C;

    /** 第14列内容 */
    @Excel(name = "第14列内容")
    private String c14O;

    /** 第14列样式 */
    @Excel(name = "第14列样式")
    @TableField(typeHandler = JSONObjectTypeHandler.class)
    private JSONObject c14Style;

    /** 第14列转义 */
    @Excel(name = "第14列转义")
    private String c14C;

    /** 第15列内容 */
    @Excel(name = "第15列内容")
    private String c15O;

    /** 第15列样式 */
    @Excel(name = "第15列样式")
    @TableField(typeHandler = JSONObjectTypeHandler.class)
    private JSONObject c15Style;

    /** 第15列转义 */
    @Excel(name = "第15列转义")
    private String c15C;

    /**** 存储表格数据 **/
    @TableField(exist = false)
    private List<DocAppendix> appendixList;

    /** 行的列数 */
    @Excel(name = "行的列数")
    private Long rowNum;

    /** 表示关联章节 */
    @Excel(name = "表示关联章节")
    private String docTitleId;

    /** 删除标志（0代表存在 2代表删除） */

    /** 表的标识 */
    private Integer tabFlag;

    /*** 分页的标识 ***/
    private Integer pageFlag;

    @Override
    public String toString() {
        return "{" + c1O + c2O + c3O +  c4O  + c5O + c6O + c7O + c8O + c9O + c10O + c11O + c12O + c13O + c14O + c15O + "}";
    }
}